#ifndef COMBINATORIO_H_
#define COMBINATORIO_H_


/* 
   Clase auxiliar que pre-calcula los numeros combinatorios de n,
   esto es, los numeros combinatorios:

   C(0, n), C(1, n), ... C(i, n), ... C(n, n)

*/
class Combinatorio {
   private:
      float *coeficientes;
      int n;

   public:
      /*
       * Construye n+1 numeros combinatorios.
       *
       * Precondicion: n > 0
       * */
      Combinatorio(int n);

      /*
       * Retorna el numero combinatorio asociado a i.
       *
       * Precondicion: 0 <= i <= n
       * */
      float operator()(int i) const;

      ~Combinatorio() ;
};


#endif
